iT邦幫忙

2024 iThome 鐵人賽

DAY 25
0

Firebase Storage是Firebase提供的一項用來存儲和管理資料的服務(可以想成google雲端的概念),適合存取圖片、音檔、影片等內容,它擁有Google Cloud Storage的技術因此可以提高資料文件上傳、下載和安全管理的性能。

  • Firebase Storage大小限制
    • 免費方案:5GB,每日最多下載流量 1GB
  • 資料儲存說明
    • 以層次結構呈現
    • 建立對資料的引用,應用程式就可以取用該資料
    • 引用可以指向一特定文件或是層次結構中更高級別的節點
  • 功能與特點
    • 能夠高效地存儲各種大小的資料文件,特別適合應用中常見的圖片、音檔、影片等內容,因此通常用來存取大量不常更動且非結構化資料
    • 會自動調整雲端空間大小,存放的東西越大越多,空間就會越來越大,反之,刪除資料空間就會縮小,因此不需要再花費人力去找哪一個應用占用雲端空間
    • 當網路不穩的情況下上傳資料文件時,Firebase Storage會在網路恢復後自動嘗試重新上傳,確保最後資料有成功上傳與資料的同步。因此不用擔心因為環境的影響造成上傳失敗,造成檔案不見
    • Firebase Storage 安全規則
      • 可與Firebase Authentication功能做整合,針對使用者的身分去設定資料讀取或寫權限,以免較隱私的資料被陌生人看到或更改
  • 上傳文件寫法
    1.假設有一個要上傳的檔案,該來源可以是Javascript的檔案、Blob API、位元組、字串類型
    const file = ...
    2.創建引用(想成路徑)。首先要先使用getStorage(),再拿結果作為參數去使用ref(),這時的引用會指向Cloud Storage的根目錄
    const storge = getStorage()
    const rootRef = ref(storage)
    3.將2.所取得的引用作為第二個參數,作為檔案的引用
    const fileRef = ref(storage,Cloud Storage的根目錄)
    4.引用之後,使用Upload Bytes來上傳到Cloud Storage,完成上傳後就可以做任何後續處理
    uploadBytes(fileRef,file).then(function(snapshot){
        console.log('Uploaded a blob or file!');
        });

關於Firebase Storage的相關介紹就到這裡,下一章見!


上一篇
Day24 Firebase Security Rules 安全規則 基本寫法
下一篇
Day26 Firebase Cloud Functions
系列文
從零開始的MySQL開發旅程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言